Printing system and method

ABSTRACT

A printing system for use in printing objects of any of a plurality of different object types includes a printer; and a printer control device with a user interface having a first option for associating printer-independent print-quality characteristics with a selected object type to be printed by said printer. A printer-independent print-quality characteristic is an instruction associated with an element, such as object type, in an electronic page which indicates printer-independent features that are preferentially emphasized when printing the element. Examples of printer-independent print quality characteristics include “make sharp edges”, “reduce mottle”, “distinguish neighboring colors”, “reduce moiré”, “distinguish tone and edges”, “maximum tone depth”, “perceptual colors” and “compress without loss of detail”. The printing system may also include a device for retrieving printer-independent print-quality characteristics associated with a document to be printed by said printer and for associating printer-dependent imaging actions with the printer-independent print-quality characteristics.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This invention is related to U.S. Pat. No. 5,687,303, PrinterController for Object Optimized Printing, U.S. Pat. No. 6,006,013,Object Optimized Printing System and Method and U.S. Pat. No. 6,256,104,Object Optimized Printing System and Method, each of which disclosure isincorporated herein by reference and made a part of this application.

FIELD OF THE INVENTION

[0002] This invention relates generally to printing systems and, moreparticularly, to printing systems and methods which provide for thespecification and association of print quality characteristics withelements in a document.

BACKGROUND OF THE INVENTION

[0003] Prior to the advent of high quality computer-generated pageimages, page images such as those found in newspapers, newsletters,magazines and the like were formed by graphic artists composing the pageimages by hand. During the process of combining each different elementon a page image, including text, photographs, constant color areas orgraphs such as pie charts, and sampled or continuously changing imagessuch as sweeps, the graphic artist could consult with the creators ofeach of the elements to determine what features of each element weremost important to preserve (e.g., “sharp edges”, “depth of tone”, and soon). Thus the operator was able to optimally form each element on thepage, independent of the other elements, by processing each according tothe creator's selected features during the combining process.

[0004] Because these page images, including one or more of theseelements, were composed by hand, each element was inherently treatedindependently of the others according to the desired features for thatelement. Thus, the optimal halftone screen design for a particularphotograph with a large sky area, which may differ from the optimalhalftone screen design for a different photograph with skin tones, couldbe optimally selected and arranged to an optimal angle according to theimaging processes expressed and carried along with the particularphotograph with the large sky area.

[0005] With the advent of digital color workstations, copiers andprinters, creators of page images who would previously have had to relyon graphic artists to compose and print their page images could insteadcreate, compose, and print them on their own using a computer connectedto the digital color copier/printer. However, most digital systems forcreating a page image, decomposing the page image into print engineinstructions, and controlling the print engine to print the page treateda page image as a single, unitary image. Creators of pages using suchdigital systems were unable to specify specific processes for renderingthe individual page elements. Thus, elements which might have benefitedfrom the use of a halftone screen that emphasized sharp edges, such as aphotograph containing many fine lines, were nevertheless treated thesame as elements that might have needed to suppress engine noise, suchas a large headline color text area where mottle and streaking would bevisible within the large letters.

[0006] U.S. Pat. No. 5,704,021 to Smith et al., Adaptive Color RenderingBy an Inkjet Printer Based on Object Type, describes a method of using aprinter system for identifying one or more different types of colorobjects in a document, selecting a preferred rendering option such ashalftoning and/or color matching for each one of such different colorobject types, respectively, and then printing the document in accordancewith the rendering options selected for each of such different colorobject types. U.S. Pat. No. 5,579,446 to Naik et al., Manual/AutomaticUser Option for Color Printing of Different Types of Objects, describesan interactive user interface which allows a choice between one “button”automatic control of color output or multi-button control of coloroutput, with both automatic and manual options providing independentcontrol for color halftoning and for color correction based on the typesof objects to be printed.

[0007] While the foregoing system is an improvement over the single,unitary page system, there are several problems with this userinterface. First, this user interface system provides only forselections based on object types, such as “photo”, “text”, and “othergraphics”. Using an object's type to decide on image processing actions,in some cases, is simply only a rough approximation. For example, largetext may not benefit from the same halftone as small text, because asmooth interior color may be more important for large text than theextremely sharp edges which are crucial to small text. Text above acertain size will have a very visible interior, and may exhibitnoticeable quality defects if a compact, edge-sharpening halftone ischosen instead of a coarser halftone that provides robust color transferand therefore reduces the tiny color deletions known as mottle in theinterior. Both cases are text, but two different halftone choices may becalled for. As a second example, one scanned photo image may containfine lines with important edge information while a different scannedimage may need large tone depth and smooth color transitions forrealistic color. Both are photos, but two different halftones and colormaps are needed for optimal printing. It would be desirable to have asystem by which rendering can be selected based on more information thansimply an object's type.

[0008] Second, since this user interface maps object types to printerdependent processes, it requires expert knowledge by the user of theprinting response for every printer used and every media desired to beused. Most users are not familiar with the response of each printer toprinter-dependent imaging action combinations to effectively improvequality. Deciding the low-level color processing combinations to use toget the best results for each object type demands that users haveintimate, expert knowledge of a particular printing system and itsresponses to all combinations of the low-level color processing choicespresented. Even if the user is experienced, the problem is compounded ina networked printer environment, where a file could be sent to any of anumber of different color printers. To get optimal quality from all theprinters no matter which one is used, a user must now have intimateknowledge of the effect of image processing action combinations on eachof the printers on the network.

[0009] Third, the user interface system does not take into account themedia being used as part of the data deciding what printer imagingactions to take. In addition to being familiar with a printer's imageprocessing actions, an experienced user must also be familiar with howdifferent media are printed on the same printer. The response of anygiven printer, for example, to both halftone and color map tables variesconsiderably depending on the media being printed on. For example, thehalftone used on smooth, synthetic paper would be optimally differentfrom that used to create the same effect on textured papers or heavypapers. Each media responds differently to the deposition of ink ortoner and therefore needs different image processing for optimalresults. It would be desirable to have a method which will account boththe printer and the media being used as factors in determiningprinter-dependent imaging actions to take.

SUMMARY OF THE INVENTION

[0010] A printing system for use in printing image objects of any of aplurality of different object types, according to one embodiment of theinvention, includes a printer and a printer control device with a userinterface having a first option for associating printer-independentprint-quality characteristics with a selected object type to be printedby the printer. A printer-independent print-quality characteristic is aninstruction associated with an image element, such as object type, in anelectronic page which indicates printer-independent features that arepreferentially emphasized when printing the element. Examples ofprinter-independent print-quality characteristics include “make sharpedges”, “reduce mottle”, “distinguish neighboring colors”, “reducemoiré”, “distinguish tone and edges”, “maximum tone depth”, “perceptualcolors” and “compress without loss of detail”. Note that multipleprinter-independent print-quality characteristics may be associated witha single image element.

[0011] Printer-independent print-quality characteristics guide theimaging compromises made by a printer without specifying exact imagingchoices such as the use of a particular halftone, color-matching table,black ink treatment, compression, etc. Thus a printer-independentprint-quality characteristic expresses a goal (“sharp edges”) for animage element which stays the same from printer to printer, but thespecific imaging actions taken to achieve the goal may vary from printerto printer and from media to media depending on the printer/mediacharacteristics.

[0012] In accordance with another feature of this embodiment, the userinterface may include a second option for associating object descriptorswith a selected object type and wherein, responsive to selection of anobject descriptor, the second option associates printer-independentprint-quality characteristics with the selected object descriptor.Examples of object descriptors include parameters such as type, size,color, location, etc. to allow the user to further refine an imageobject. Note that multiple printer-independent print-qualitycharacteristics may be associated with a single object descriptor. Bymapping an object descriptor (or an object type) to aprinter-independent print-quality characteristic, users with noexperience in a particular printing system are able to intelligentlyapply their knowledge of the document to improve the printed document.

[0013] In accordance with another feature of this embodiment, the userinterface may includes a dialog screen having a first control forinvoking an option of automatically associating object descriptors (orobject types) with printer-independent print-quality characteristics inaccordance with a set of predetermined associations and a second controlfor manually associating object descriptors (or object types) withprinter-independent print-quality characteristics.

[0014] Printer-independent print-quality characteristics may also beexploited if the electronic document itself contains theprinter-independent print-quality characteristics. Adding theprinter-independent print-quality characteristics to the document's PDLfile accomplishes this. Furthermore, the identification of objectsmatching a particular description may sometimes be more accurate whendone within a page description language rather than later during therendering process.

[0015] A method of creating a page description language description ofan electronic document, according to another embodiment of theinvention, includes providing an electronic document, wherein theelectronic document includes at least one image object, converting theelectronic document into print data and rendering data in accordancewith a page description language to generate a PDL file, associating atleast one printer-independent print-quality characteristic with the atleast one image object, and inserting the association information in thePDL file. In accordance with another feature of the method,printer-independent print-quality characteristics may be associatedaccording to the image object's type and by object descriptor.

[0016] Once printer-independent print-quality characteristics have beenassociated with a document (via the user interface in a printing systemor in the PDL file), the printing system needs a way to translate thoseprinter-independent print-quality characteristics to the printerdependent imaging actions. A printing system, according to anotherembodiment of the invention, includes a printer, and a printer controldevice for retrieving printer-independent print-quality characteristicsassociated with a document to be printed by said printer and forassociating printer-dependent imaging actions with theprinter-independent print-quality characteristics. Upon printing, a datastructure would be associated with the electronic document that wouldinclude a mapping of printer-independent print-quality characteristicsto printer-dependent imaging actions. The printing system would loadthis mapping over the default mapping it normally uses. This feature ofmapping printer-independent print-quality characteristics to actualimage processing steps allows virtually complete control over systemchoices. It may be useful for those expert users with a great deal ofexperience with a printer, a set of media, and a customer base. Itallows the expert user, if desired, to specify printer-dependent imagingactions for new printer-independent print-quality characteristics andalso to specify how existing printer-independent print-qualitycharacteristics would be better achieved in the printer's environment.The control may be fine-grained, since each specification for achievingeach printer-independent print-quality characteristic would not only beprinter specific but also media specific. For example, the halftone setused for the various printer-independent print-quality characteristicson smooth, synthetic paper would be optimally different from those usedon textured papers or heavy papers.

[0017] A printing system for printing a document having at least onepage described in a page description language, according to anotherembodiment of the invention, includes a printer, a page descriptionlanguage decomposer for converting the document data into at least oneimage object, a user interface having a first option for associatingprinter-independent print-quality characteristics with a selected imageobject to be printed by said printer, and a printer control device forretrieving the printer-independent print-quality characteristics and forassociating printer-dependent imaging actions with theprinter-independent print-quality characteristics.

BRIEF DESCRIPTION OF THE DRAWINGS

[0018]FIG. 1 is a block diagram of a printing system according to oneembodiment of the invention;

[0019]FIG. 2 is a block diagram of the user interface shown in FIG. 1;

[0020]FIG. 3 is a block diagram of a printing system according toanother embodiment of the invention;

[0021]FIG. 4 is a block diagram of a printing system according to yetanother embodiment of the invention; and

[0022]FIG. 5 is a block diagram of the user interface shown in FIG. 3.

DETAILED DESCRIPTION OF THE EMBODIMENTS

[0023] A printing system for use in printing image objects of any of aplurality of different object types, according to one embodiment of theinvention, is shown in FIG. 1 and referred to by reference numeral 100.Printing system 100 includes a printer 10 and a print control device 12with a user interface 20. Referring to FIG. 2, user interface 20includes a first option 22 for associating printer-independentprint-quality characteristics 23 with a selected object type to beprinted by the printer. A single object type could be associated withone or multiple printer-independent print-quality characteristics.

[0024] The user interface associates printer-independent print-qualitycharacteristics with image objects. A printer-independent print-qualitycharacteristic is an instruction associated with a particular imageelement or elements (such as an image object) on an electronic page. Aprinter-independent print-quality characteristic can be thought of as aguide indicating an important feature of the element(s) which should bepreserved during rendering. Examples of printer-independentprint-quality characteristics include “make sharp edges”, “reducemottle”, “distinguish neighboring colors”, “reduce moiré”, “distinguishtone and edges”, “maximum tone depth”, “perceptual colors”, “contour”,“no abutting corners”, “increase moiré”, “uniform gloss”, “distinctness”and “compress without loss of detail”. Many other printer-independentprint-quality characteristics may be defined.

[0025] A printer-independent print-quality characteristic is bothprinter-independent and media-independent. For example, the instruction“make sharp edges” does not say how to make sharp edges on anyparticular printer or printer/media combination. A printer-independentprint-quality characteristic may be used in or associated with anelectronic file (or element or object therein) that may be sent to anyprinter that supports the use of printer-independent print-qualitycharacteristics and printed on any media that is supported by theprinter. For example, if the printer-independent print-qualitycharacteristics “sharp edges” is read by a printing system and isassociated with a block of small colored text, it indicates thatprinter-dependent imaging actions (e.g., color transforms, halftones,compression methods, black generation methods, etc.) for that block ofsmall text should be chosen to emphasize the sharpness of edges. Imagingactions are not chosen by the printer-independent print-qualitycharacteristic, because the imaging action choices are specific to aparticular printing system, and within a printing system dependent onthe media (e.g., paper or transparency) upon which the print will bemade. Each printer must make its own specific imaging choices for eachof its supported media, guided by the goal of “sharp edges”.

[0026] A second aspect of the printing system 100 provides for furtherimprovements. For example, small text may need to emphasize “SharpEdges” while large headline text may need a “Reduce Mottle”printer-independent print-quality characteristics so that the interiorshave smooth, solid color. Similarly, a stroke of one width may needdifferent printer-independent print-quality characteristics than athicker stroke. Some photos may contain sharp edges that should beemphasized, others may need fine-tuned colors. Printing system 100provides for such a refinement by associating printer-independentprint-quality characteristics 23 with object descriptors 24. An objectdescriptor may include its type, but may also include other parameterswhich serve to further refine the selection. Elements on the page maythus be described with finer grain than simply the “photo” or “text”.Instead, for example, “text below 24 point”, “photo at location (x, y)”,“photos with only black and white”, “color fills with color (r, g, b)”all may be specified as object descriptors.

[0027] In many cases, the user may be satisfied with being able toassociate printer-independent print-quality characteristics with objecttypes. However, for those cases where finer control is needed, printingsystem 100 provides the capability to associate printer-independentprint-quality characteristics to a set of page elements at a finer levelthat share similar characteristics. Thus, a user has the option of usingassociating printer-independent print-quality characteristics with agreater set of object descriptors. The user is also freed from theconstraint of having to intimately understand printing and mediatechnology before making intelligent choices for optimum imaging.

[0028] Referring again to FIG. 2, the user interface 20 provides asecond option for associating object descriptors 24 withprinter-independent print-quality characteristics 23. Object descriptorsinclude type, color, size, etc. and provide the user with the option offine tuning the ultimate rendering by the printer without having to knowthe specifics of the printer's imaging actions to achieve theprinter-independent print-quality characteristic. A single objectdescriptor could be associated with one or multiple printer-independentprint-quality characteristics. Some printers may have a control 26 forinvoking an option of automatically associating object descriptors (orobject types) with printer-independent print-quality characteristics inaccordance with a set of predetermined associations. Control 29 wouldenable users to override the default set and allow operation of theother controls for manual input. If a user is not satisfied with theavailable object descriptors, the user may select customer descriptor 28and define his own object descriptor and associate one or moreprinter-independent print-quality characteristics with it.

[0029] By mapping an object descriptor (e.g., type, size, color,location, etc.) to printer-independent print-quality characteristics,users with absolutely no experience in the particular printing systembeing used are still able to intelligently apply their knowledge of thedocument to improve rendering over a printer's default settings. Forexample, if a black and white scanned image on a page is known by theuser (but not the rendering software) to contain important edgeinformation (such as scanned text), a user with no knowledge of theprinting system can still apply the “preserve edges” hint to the objectdescriptor “B/W image” and achieve noticeable improvement.

[0030] The user interface 20 can be implemented in software on a networkas a window (either in the monitor of an attached computer (not shown)or in the display of the print control device or the printer) whichwould query the printer driver or other information source of a networkprinting system to determine which object types are recognized by thesystem and which parameters can be used as descriptors for each objecttype, and which printer-independent print-quality characteristics aresupported. The user interface may then display a layered windowcontaining the queried information or all items could be displayed in asingle window as shown in FIG. 2. For example, an automatic mode mightbe set by selecting default set 26. For manual input, a user wouldselect manual 29 and then begin selecting according to object type 22 orobject descriptor 24. If the user changes any settings, the user cansave the settings by selecting save 27 and those settings will be usedinstead of the default settings of automatic mode. To start over theuser may select clear 25. To load a previously saved group of settings,the user may select load 21 and then select from a list of previouslysaved named settings.

[0031] If the user selects object type 22, a list of recognized objecttypes is displayed to the user. Examples of object types include text,graphics and photo, but any number of other object types might also beused. To associate printer-independent print-quality characteristicswith an object descriptor, the user may select object descriptor 24 anda list of object descriptors would be displayed. Alternatively, the usermay select a particular object type, for example “text” using objecttype 22 and then select from a list of displayed 1 5 object descriptorsassociated with that object type (for example “size”, since text ofdifferent sizes should often be mapped to different printer-independentprint-quality characteristics). Available printer-independentprint-quality characteristics may be displayed by printer-independentprint-quality characteristics 23, from which the user may select one ormore to associate with the particular object descriptor associated withthe object type text.

[0032] A printing system that uses printer-independent print-qualitycharacteristics to guide printer-dependent imaging actions (describedbelow) will then provide an automatic mapping, with manual interventionas necessary, to map the printer-independent print-qualitycharacteristics to a specific set of imaging actions (color transforms,halftones, compression methods, black generation methods, etc.) whichwill be taken to implement that printer-independent print-qualitycharacteristic. This mapping may also take into account the media ormedia-type that is being requested for printing the document.

[0033] The printing system 100 allows users to select from a large andextensible list of object types, and to attach to each of those objecttypes not low-level rendering choices such as choice of halftone, butrather high-level descriptions of important features for each objecttype. For example, rather than choosing a “Scatter Halftone” for textobjects (the default printer-dependent imaging action choice in manyprinters), a user might choose the printer-independent print-qualitycharacteristic “Sharp Edges” (which may be the default choice for textobjects). Being able to associate a printer-independent print-qualitycharacteristic with an object type or object descriptor provides greatercontrol and flexibility than mapping to a printer-dependent imagingaction such as “Scatter Halftone” for text. Selecting “Scatter Halftone”for text requires an intimate knowledge of the effects of varioushalftones for each particular printer and media. With the printingsystem 100, no knowledge of printing systems, halftones, color, media,or imaging is needed. All that is needed is for the user to state thathe wants certain text to have “Sharp Edges”, no matter which printer orwhich media is being used. It is up to each printer to implement the“Sharp Edges” command with the appropriate set of printer-dependentimaging actions for the media being used.

[0034] The user interface 20 may be implemented as a computer softwareprogram run on a personal computer coupled with printing system 100.User interface 20 may, for example, be implemented as a tool within anyof a number of standard and well-known printer dialog windows. Uponbeing selected, the tool queries the associated printing system todetermine 1) which object types are recognized by the system, 2) whichparameters if any can be used as descriptors for each object type, and3) which printer-independent print-quality characteristics aresupported. The user interface tool may then display a layered windowcontaining the queried information. At the top layer, a list ofrecognized object types may be presented to the user. The tool programmay be configured such that right-clicking an object type brings up awindow allowing finer-grained object descriptors (for example,right-clicking the “text” object type might provide an optionaldescriptor window that could include “size”, “color”, “location”, etc.).The descriptor window for each object allows user input, for example, tospecify that text of different sizes or different colors be mapped to adifferent set of printer-independent print-quality characteristics.

[0035] In the next step, once a user has described a particular objectby at least type and possibly other parameters, the user may map thatobject descriptor to a particular set of printer-independentprint-quality characteristics. This may be accomplished by clicking onthe object descriptor to bring up a sub-window of availableprinter-independent print-quality characteristics, with the onescurrently selected marked and listed in order of precedence. Initially,this list may be the default list provided by the factory with theprinting system. The user may build a new list of printer-independentprint-quality characteristics for that particular object descriptor byclicking on the desired printer-independent print-qualitycharacteristics to select or de-select them, and click-dragging each toplace it in desired order.

[0036] Alternatively, a user interface software tool may be locatedwithin a document creation system where no printer has yet been chosento query for available object types, object descriptors, andprinter-independent print-quality characteristics. In this case, it ispossible that a standardized list of object types, object descriptors,and printer-independent print-quality characteristics will eventually beagreed upon to be recognized by a wide range of printers. In thisembodiment, a standardized list of object types, descriptors, andprinter-independent print-quality characteristics is presented to theuser, and the mapping of printer-independent print-qualitycharacteristics to described objects proceeds as described above.

[0037] Note that while in the first exemplary case an actual printingsystem is queried before presenting lists to a user, in neither case isthe user required to enter information that depends on knowledge of theprinting system or the media to be used. Note too that the queryingprocess of the first software embodiment provides for an extensible andflexible list of object types, allowed object descriptors, and supportedprinter-independent print-quality characteristics, dependent only on thesophistication of the printing system.

[0038] Both embodiments may include a Save button so that once alldesired changes have been made, the user may optionally save the changeswith a unique name. A Load button may similarly list previously savedobject descriptor or object type to printer-independent print-qualitycharacteristics mappings from which the user may choose. One mappingusually on the list is a default mapping which came with the system, sothat a user may easily restore a system to its default settings.

[0039] Upon printing, a data structure giving the mappings of objectdescriptors to printer-independent print-quality characteristics isloaded into the printing system at any of a number of possible locationsor attached to the print data sent. Upon receipt the front end RIP ofthe printing system replaces the default mapping it normally uses withthis new mapping before beginning the rendering process.

[0040] A page description language (PDL) is a language such as AdobeSystems, Inc.'s PostScript™ or Xerox's InterPress which allows theappearance of a printed page to be described in a high-level,device-independent way. PostScript™ (PS) is a page description languagedefined and copyrighted by Adobe Systems. Printing then becomes atwo-stage process: an application program produces a description in thelanguage, which is then interpreted by a specific output device. Such alanguage can therefore serve as an interchange standard for transmissionand storage of printable documents.

[0041] In another embodiment of the invention, printer-independentprint-quality characteristics can be inserted into the page descriptionlanguage of an electronic document. This is accomplished by providing anelectronic document, wherein the electronic document includes at leastone image object, converting the electronic document into print data andrendering data in accordance with a page description language togenerate a PDL file, associating at least one printer-independentprint-quality characteristic with the at least one image object, andinserting the association information in the PDL file.

[0042] Thus a page description language file may includeprinter-independent print-quality characteristics (such as “make sharpedges”, “reduce mottle”, “neighboring colors must be distinguishable”,“reduce moiré”, “distinguish tone and edges” and “compress without lossof detail”) associated with the various image objects in the document.After the PDL file is generated, it may be sent to any printing systemwhich is able to use the included printer-independent print-qualitycharacteristics or object information to guide and optimize theprocessing of the various elements within the PDL file for optimalstorage and printing.

[0043] A printing system that uses printer-independent print-qualitycharacteristics to guide imaging actions will then provide an automaticmapping, with manual intervention as necessary, to map theprinter-independent print-quality characteristics to a specific set ofprinter-dependent imaging actions (such as, color transforms, halftones,compression methods, black generation methods, etc.) which will be takenby that particular printer to implement the particularprinter-independent print-quality characteristics. This mapping may alsotake into account the media or media-type that is being requested forprinting the document.

[0044] In a first aspect of this embodiment, the method provides for themodification of a page description language version of a electronicdocument by inserting information corresponding to a mapping of imageobjects (such as object types) to printer-independent print-qualitycharacteristics into the PDL file representing the electronic document.The page description language file is modified to become aself-contained source of information, for any printing system which isable to interpret and use it, regarding the important features topreserve for each of an extensible list of object types.Printer-independent print-quality characteristics associated with imageobjects are added to an electronic file which can be sent anywhere, atany time, without re-specifying for each printer and media. Further, theuser needs no knowledge of printing systems, halftones, color, media, orimaging. All that is needed is for the user to state that he wantsobject type “text” to have “Sharp Edges”, no matter which printer andwhich media is being used. It is up to each printer to implement the“Sharp Edges” command found embedded in the page description languagefile with the appropriate set of printer-dependent imaging actions forthe media being used.

[0045] The PDL file may be generated with further refinements. As notedabove, small text may need to emphasize “Sharp Edges” while largeheadline text may need a “Reduce Mottle” printer-independentprint-quality characteristic so that the interiors have smooth, solidcolor. Similarly, a stroke of one width may need differentprinter-independent print-quality characteristics than a thicker stroke.Some photos may contain sharp edges that should be emphasized, othersmay need fine-tuned colors. This desired refinement may be achieved byinserting information into a page description language associatingprinter-independent print-quality characteristics with objectdescriptors, not simply object types. An object descriptor may includeits type, but may also include other parameters which serve to furtherrefine the selection. The method provides users with the capability toadd to a page description language information that associatesprinter-independent print-quality characteristics to a set of imageobjects in a page that share similar characteristics.

[0046] In a further aspect of this embodiment, the method enables a userto modify a page description language file by inserting objectdescriptor comments which can later help a rendering system toaccurately identify page elements which match a particular objectdescriptor. The system may implement this feature by recognizing“boilerplate” or common PDL constructs from major page creationapplications as representing the way a particular object is rendered ina PDL by a particular page creation application. This aspect of theinvention may serve to improve the accuracy by which objects arerecognized by the imaging software. Such recognition is important so asto accurately apply printer-independent print-quality characteristics tothe correct objects. For example, in many PostScript documents, color“sweeps” (areas of color that gradually and smoothly change from onecolor to another) are often implemented as thin strokes of color setside by side, with each stroke having a slightly different color. In thepage description language, such “boilerplate” constructs can be moreeasily identified as a color sweep; later in the process, however, theimaging code may simply see a series of strokes, and misapply theprinter-independent print-quality characteristics for strokes. This mayserve to emphasize edges when actually the user desires to emphasizesmooth color transitions with no visible edges. By adding objectinformation and comments into the PDL file for the electronic document,an imaging system which can use such commented information can therebycorrectly identify a complex object type.

[0047] In accordance with another aspect of this embodiment, instead ofinserting an overall mapping of object type or object descriptors toprinter-independent print-quality characteristics into the pagedescription language file, it may be more convenient in some cases toidentify object types throughout the electronic document by location,and insert the appropriate printer-independent print-qualitycharacteristic instructions at the appropriate places throughout thedocument. This structure allows an imaging system to skip the step ofbuilding a mapping table of objects to printer-independent print-qualitycharacteristics, and simply rely on the page description language toprovide the appropriate printer-independent print-qualitycharacteristics at the appropriate times. This aspect may also beimplemented in a page creation software program which allows theaddition of printer-independent print-quality characteristics toindividual elements on a page.

[0048] This embodiment of the invention may be implemented by usingDocument Structuring Convention (DSC) comments to implement the additionof object to printer-independent print-quality characteristics mappingtables into a PostScript page description language. The DSC is awell-known and recognized system for providing additional information toa page rendering system that goes beyond explicitly defined PostScript.As such, it is a convenient vehicle for carrying a table of informationproviding a desired mapping between objects and printer-independentprint-quality characteristics. Such a table can be used to advantage bya printing system which is able to read, interpret, and useprinter-independent print-quality characteristics for optimal rendering,yet will be safely ignored as mere comments by printing systems which donot implement printer-independent print-quality characteristics. DSCcomments are normally read by a pre-processing system, which is thenable to set up an environment for an imaging system to use while it isreading and executing the PostScript proper. Thus, for a printing systemwhich implements printer-independent print-quality characteristics, apre-processor would read the table from the DSC comments and construct atable that matches the imaging system's data structure and contains themapping information for each page of the document.

[0049] Not all systems can use the DSC comments provided in PostScript.For systems which cannot, this embodiment of the invention can beimplements by using normal imaging commands, but with a special codethat denotes to “listening” software that special information isforthcoming, but which causes no harm to software that is not preparedto handle object type or printer-independent print-qualitycharacteristics information from the PostScript data stream. An exampleis to use the “moveto” command to move to a predesignated location welloff the imagable area of a page (for example, an (X_(min), Y_(min))coordinate would likely be off any realistic imagable page), and thenuse the PostScript “show” command to indicate a text string thatactually contains object or printer-independent print-qualitycharacteristics information. The routine that handles “moveto” in thesystem imager is modified to identify the predesignated (X_(min),Y_(min)) coordinates, and sets a flag. The “show” procedure of theimager is modified to consult the flag, and, if set, to interpret thestring not as text to be shown but as object or printer-independentprint-quality characteristics information to be stored at theappropriate location. Any imaging system not so modified would simplyimage a text string off the page (a relatively quick process), and thepage image itself would not be changed.

[0050] Other systems for describing a page, using Page DescriptionLanguages (PDLs) such as Interpress™, Graphical Display Interfaces(GDIs), such as the one used with Windows™, Printer Command Languages(PCLs) for controlling a print engine, such as the Hewlett-PackardPrinter Command Language (PCL-5)™, or the like, have similar structureswhich would yield to including special information about object typesand printer-independent print-quality characteristics.

[0051] This embodiment of the invention allows the user to add into apage description language a mapping of object types toprinter-independent print quality characteristics instead ofprinter/media dependent combinations of specific rendering choices,frees the user from needing any knowledge of the printing system ormedia desired to be used, and allows the user to generateprinter-independent page description language files that still containvaluable additional information to guide optimal rendering. Thisembodiment also allows a user to go beyond limiting image objects toobject types (users can specify object descriptors and insert comments),gives much more fine-grained control to the user to define the elementswithin a page that are of interest for optimized printing, and to addthat printer-independent print-quality characteristic information into aPDL. This embodiment also provides an alternative method by which theobject and printer-independent print-quality characteristic informationis loaded into a PDL file, allowing a diversity of ways in which imagingsystems can implement the use of printer-independent print-qualitycharacteristics to optimize document storage and printing.

[0052] A printing system according to another embodiment of theinvention is shown in FIG. 3, and referred to by reference numeral 150.Printing system 150 includes a printer 10 and a printer control device30. Printer control device 30 retrieves printer-independentprint-quality characteristics 32 associated with a document to beprinted by printer 10 and associates printer-dependent imaging actions34 with the printer-independent print-quality characteristics 32.Printer control device 30 also includes a user interface 36 having acontrol for associating printer-independent print-qualitycharacteristics with printer-dependent imaging actions. In most cases,the printer control device would have a predetermined set of mappings ofimaging actions for each printer-independent print-qualitycharacteristic. However, when a user desires to change that mapping fora particular print job, the user interface allows the user to makechanges to the mappings. The user interface would in most cases only beused by sophisticated users, but is available to all users.

[0053] Referring to FIG. 5, user interface 36 includes control 44 forautomatically associating printer-independent print-qualitycharacteristics 42 with printer-dependent imaging actions 48 inaccordance with a set of predetermined default associations and control46 for enabling the user to manually associate printer-independentprint-quality characteristics 42 with printer-dependent imaging actions48. Control 47 allows the user to save his selections and control 49allows the user to clear work and start over. Load control 45 allows auser to load a previously saved set of selections. Control 43 allows auser to define a new printer-independent print-quality characteristicwhich the user can then associate printer-dependent imaging actions.Control 43 allows unlimited expansion of custom printer-independentprint-quality characteristics, by providing a mechanism for mapping newprinter-independent print-quality characteristic names to imageprocessing steps.

[0054] A color or black and white printing system can respond toprinter-independent print-quality characteristics associated withparticular elements within a page to guide the processing of thoseelements. Printer-independent print-quality characteristics areuser-extensible and are associated with elements within a document. Theyare mapped to printer-and-media-dependent imaging actions (such aschoice of halftone, color correction, black treatment, trapping boundaryconditions, compression, etc), with the result that different elementswithin a page are processed differently as guided by the providedprinter-independent print-quality characteristics. For example, coloredtext above a certain point size might be processed with a very smoothhalftone to reduce the extent of mottle in the interior of the text. Aphotograph containing text or lines might be processed to preserve thesharp edges within the photograph. A different photograph with a largesky area might be processed to reduce the visibility of the cyanhalftone dot which is so present in the sky. A default list of elementdescriptions and the associated desired rendering is provided. Mappingsare derived either from factory supplied or user-supplied values, andmay be named, stored, and reused.

[0055] System 150 provides a method and system by which theprinter-independent print-quality characteristics are used to switchimaging actions within a page to produce an optimally printed page. Foreach registered media, each printer-independent print-qualitycharacteristic is automatically mapped to an extensible list ofprinter-and-media-dependent imaging actions (choice of halftone, colorcorrection, black treatment, trapping boundary conditions, compression,etc.). For example, each printer for each media will map theprinter-independent print-quality characteristic “sharp edges” to theset of imaging actions that best advance the goal of creating sharpedges. System 150 also provides for user control, however, in that itprovides an output user interface 35 which allows a user to change themapping of any printer-independent print-quality characteristic to adifferent list of imaging actions. User interface 36 also allows a userto define a new printer-independent print-quality characteristic bylinking it to a list of imaging actions. System 150 applies, at thecorrect point in the imaging chain, all imaging actions as specified toproduce a page optimized according to the printer-independentprint-quality characteristics of the page creator.

[0056] User interface 36 can be implemented in any of the ways userinterface 20 was described as being implemented. For example, userinterface 36 can be implemented as a window which would query theprinter driver or other information source of a network printing systemto determine the printer processing steps (halftone, color transform,etc.) which are available to be switched in that particular printingsystem, the available choices for each (e.g., which halftones areavailable, which color transforms, etc.), the printer-independentprint-quality characteristics currently supported, the media typescurrently supported, and the current default mappings ofprinter-independent print-quality characteristics to color processingsteps for each supported media type.

[0057] The user interface could then display a layered window containingthe queried information. The first list presented to the user is thelist of supported printer-independent print-quality characteristics. Atthat layer the user is able to add custom printer-independentprint-quality characteristics to be mapped later by the user toparticular image processing steps. If a user selects any of theprinter-independent print-quality characteristics, a sub-window may bedisplayed which shows the color processing steps taken, for eachsupported media, for that printer-independent print-qualitycharacteristic. If the user selects any of those color processing steps(e.g., the halftone used), a further sub-window is displayed listing thehalftone choices, and the user may choose a different one.

[0058] In customizing a new printer-independent print-qualitycharacteristic, the user may be initially supplied with generic colorprocessing choices for each supported media (the ones the system woulduse if no printer-independent print-quality characteristics areavailable for an image object). The user may, as outlined above, selecteach of the generic color processing steps, be provided with a list ofall available options, and may select one of those options. Whenfinished, the new custom printer-independent print-qualitycharacteristic will have been defined for whatever media the user wishesto define.

[0059] Upon printing, a data structure giving the mappings ofprinter-independent print-quality characteristics to color processingsteps would be attached to the print data sent, and the imaging systemwould have to be prepared to load this mapping over the default mappingit normally uses. These requirements could be implemented any number ofways.

[0060] A printing system for printing a document having at least onepage described in a page description language, according to anotherembodiment of the invention, is shown in FIG. 4 and referred to byreference numeral 200. System 200 includes a printer 10, a pagedescription language decomposer 50 for converting the document data intoat least one image object, a user interface 60 having a first option forassociating printer-independent print-quality characteristics with aselected image object to be printed by said printer, and a printercontrol device 70 for retrieving the printer-independent print-qualitycharacteristics and for associating printer-dependent imaging actionswith the printer-independent print-quality characteristics. An optionalsecond user interface 80 (the features of which may be incorporated inuser interface 60 to provide a combined user interface having allfeatures) includes a control for associating printer-independentprint-quality characteristics with printer-dependent imaging actions.

[0061] System 200 recognizes and is able to process printer-independentprint-quality characteristics. System 200 enables users to obtain andview the list of printer-independent print-quality characteristicscurrently understood and supported by the printer, a list by category ofpossible imaging actions, and a list of media used by the printer.System 200 allows users to specify printer-independent print-qualitycharacteristics for particular image objects in a document to be printedif no prior application has assigned any to the document and to changeprinter-independent print-quality characteristics already assigned tothe document. Additionally, system 200 provides a method of changing,for any of the registered media, any of the current mappings ofprinter-independent print-quality characteristics to printer-dependentimaging actions. All user actions may be optionally saved and stored.System default settings may be restored.

[0062] Custom printer-independent print-quality characteristics may bedefined by the user and mapped to both image objects andprinter-dependent imaging actions. The user may be initially suppliedwith generic imaging actions for each supported media (the ones thesystem would use if no printer-independent print-quality characteristicsare available for an image object). The user may, as outlined above,select each of the generic imaging actions, be provided with a list ofall available options, and may select one of those options. Whenfinished, the new custom printer-independent print-qualitycharacteristic will have been defined for whatever media the user wishesto define.

[0063] Upon printing, a data structure giving the mappings ofprinter-independent print-quality characteristics to imaging actions isloaded into the printing system at any of a number of possible locationsor attached to the print data sent, and the front end RIP of theprinting system replaces the default mapping it normally uses with thisnew mapping before beginning the rendering process.

[0064] By using printer-independent print-quality characteristics toprimarily guide the imaging actions taken for processing individualelements of an electronic page for printing or display, it is possibleto respond to the page creator's desires more accurately. By usingprinter-independent print-quality characteristics (which are bothprinter-independent and media-independent), it is possible to generateelectronic pages that may be printed reliably on any printer and anymedia while maintaining the optimum output according to the pagecreator's desires. By including media type as a factor in deciding onprinter-specific imaging actions, a much greater degree of control isoffered to the user to achieve optimum output. By allowing image objectsto be identified not only by an extensible list of object types but alsoan extensible set of object descriptors, a finer-grained set of elementsmay be identified for optimized processing. By allowing a large andextensible range of possible imaging actions (halftone, blackgeneration, tone curve, color space transform, gamut mapping,compression, etc.), greater control is given to more effectivelyoptimize a printer-independent print-quality characteristic for aparticular printer/media. By allowing the current mapping ofprinter-independent print-quality characteristics to imaging actions(starting with the factory default mapping) to be changed in part or inwhole, a user is able to tune a particular printer printing on aparticular media for a particular market to achieve the designer'sprinter-independent print-quality characteristics as closely aspossible. By providing for naming, storing, and restoring ofprinter-independent print-quality characteristic mappings, users areable to efficiently switch between default and multiple custom settingsfor testing purposes or to allow for personal preferences from varioususers.

[0065] The printing systems and methods described herein can readily beused in combination with the object optimized printing systems andmethods described in U.S. Pat. No. 5,687,303, U.S. Pat. No. 6,006,013,and U.S. Pat. No. 6,256,104.

[0066] The invention has been described with reference to a particularembodiment. Modifications and alterations will occur to others uponreading and understanding this specification taken together with thedrawings. The embodiments are but examples, and various alternatives,modifications, variations or improvements may be made by those skilledin the art from this teaching which are intended to be encompassed bythe following claims.

What is claimed is:
 1. A printing system, comprising: a printer; and aprinter control device for retrieving printer-independent print-qualitycharacteristics associated with a document to be printed by said printerand for associating printer-dependent imaging actions with theprinter-independent print-quality characteristics.
 2. The printingsystem of claim 1, further comprising a user interface having a controlfor associating printer-independent print-quality characteristics withprinter-dependent imaging actions.
 3. The printing system of claim 1,further comprising a user interface having a first control for invokingan option of automatically associating printer-independent print-qualitycharacteristics with printer-dependent imaging actions in accordancewith a set of predetermined associations and a second control formanually associating printer-independent print-quality characteristicswith printer-dependent imaging actions.
 4. The printing system of claim3, further comprising a third control for defining a customprinter-independent print-quality characteristic and for associatingprinter-dependent imaging actions with said custom printer-independentprint-quality characteristic.
 5. The printing system of claim 3, furthercomprising a third control for saving a set of associations.
 6. Theprinting system of claim 5, further comprising a fourth control forloading said saved set of associations.
 7. The printing system of claim5, further comprising a fifth control for selecting a defaultconfiguration of associations.
 8. A method for controlling the qualityof printing, comprising: providing a list of printer-dependent imagingactions; providing a list of printer-independent print-qualitycharacteristics; selecting a printer-independent print-qualitycharacteristic from the list of printer-independent print-qualitycharacteristics; and associating at least one printer-dependent imagingaction with the selected printer-independent print-qualitycharacteristic.
 9. The method of claim 8, further comprising: defining acustom printer-independent print-quality characteristic; adding thecustom printer-independent print-quality characteristic to the list ofprinter-independent print-quality characteristics; and associating atleast one printer-dependent imaging action with said customprinter-independent print-quality characteristic.
 10. The method ofclaim 8, further comprising saving a selected configuration ofassociations.
 11. The method of claim 10, further comprising loading asaved selected configuration of associations.
 12. The method of claim 8,further comprising providing a default configuration of associations.